function lstinf$(a$,b$,c$)
  adra=1:adrb=1:blngt=len(b$):d$=""
  while adrb<=blngt
    if mid$ (a$,adra,1)=mid$ (b$,adrb,1) then:adrb+=1:end if
    adra=adra+1
    end while
  while mid$(a$,adra,1)<>left$(c$,1)
    d$=d$+mid$(a$,adra,1):adra=adra+1
    end while
  lstinf$=d$
  end function

function vldc(a$)
  t0$="!"+a$+".0.0.0."
  t1$=lstinf$(t0$,"!",".")
  t2$=lstinf$(t0$,".",".")
  t3=10^(len(t2$))
  vldc=val(t1$)+(val(t2$)/t3)
  end function

dim chfq[16],chvl[16]

finp$="_.csv"
if argc>2 then:finp$=argv(2):end if

print"56676D20 FFFFFF00 610100000000000000000000E00D0000F8F502000000"
print"0000000000003C0000000000000000000000000000008C00000000000000"
print"000000000000000000000000000000000000000000000000000000000000"
print"0000000000000000000000000000000000000000000000000000 00000000" '4C4F1B00
print"000200000000000000000000000000000000000000000000000000000000"
print"000000000000 4C4F1BC0 0000000000000000000000000000000000000000"
print"00000000 00000000 00000000"

print"D20100D4 D201029E D2010478"
print"D2010502 D2010679 D2010702"
print"D2020008 D2020108 D202020B D202030A"
print"D203001F D2030000"
print"D2000000 D2000119 D2000231 D2000347"
print"D200045A D200056A D2000675 D200077D"
print"D200087F D200097D D2000A75 D2000B6A"
print"D2000C5A D2000D47 D2000E31 D2000F19"
print"D2001080 D2001190 D20012A0 D20013B0"
print"D20014C0 D20015D0 D20016E0 D20017F0"
print"D2001800 D2001910 D2001A20 D2001B30"
print"D2001C40 D2001D50 D2001E60 D2001F70"
print"D203001F D2030000"
print"D2002000 D2002119 D2002231 D2002347"
print"D200245A D200256A D2002675 D200277D"
print"D200287F D200297D D2002A75 D2002B6A"
print"D2002C5A D2002D47 D2002E31 D2002F19"
print"D2003080 D2003190 D20032A0 D20033B0"
print"D20034C0 D20035D0 D20036E0 D20037F0"
print"D2003800 D2003910 D2003A20 D2003B30"
print"D2003C40 D2003D50 D2003E60 D2003F70"
print"D203001F D2030000"
print"D2004000 D2004100 D2004200 D2004380"
print"D2004400 D2004570 D2004670 D2004770"
print"D2004800 D2004900 D2004A00 D2004B80"
print"D2004C00 D2004D00 D2004E00 D2004F80"
print"D2005080 D2005180 D2005280 D2005300"
print"D2005480 D2005500 D2005600 D2005700"
print"D2005800 D2005980 D2005A80 D2005B80"
print"D2005C00 D2005D80 D2005E80 D2005F80"
print"D203001F D2030000"
print"D2006000 D2006100 D2006200 D2006380"
print"D2006400 D2006570 D2006670 D2006770"
print"D2006800 D2006900 D2006A00 D2006B80"
print"D2006C00 D2006D00 D2006E00 D2006F80"
print"D2007080 D2007180 D2007280 D2007300"
print"D2007480 D2007500 D2007600 D2007700"
print"D2007800 D2007980 D2007A80 D2007B80"
print"D2007C00 D2007D80 D2007E80 D2007F80"
print"D203001F D2030000"
print"D2048000 D20481F8 D20482F0 D20483E8"
print"D20484E0 D20485D8 D20486D0 D20487C8"
print"D20488C0 D20489B8 D2048AB0 D2048BA8"
print"D2048CA0 D2048D98 D2048E90 D2048F88"
print"D2049080 D2049178 D2049270 D2049368"
print"D2049460 D2049558 D2049650 D2049748"
print"D2049840 D2049938 D2049A30 D2049B28"
print"D2049C20 D2049D18 D2049E10 D2049F08"
print"D203001F"

print"D28100D4 D281029E D2810478"
print"D2810502 D2810679 D2810702"
print"D2820008 D2820108 D282020B D282030A"
print"D283001F D2830000"
print"D2800000 D2800119 D2800231 D2800347"
print"D280045A D280056A D2800675 D280077D"
print"D280087F D280097D D2800A75 D2800B6A"
print"D2800C5A D2800D47 D2800E31 D2800F19"
print"D2801080 D2801190 D28012A0 D28013B0"
print"D28014C0 D28015D0 D28016E0 D28017F0"
print"D2801800 D2801910 D2801A20 D2801B30"
print"D2801C40 D2801D50 D2801E60 D2801F70"
print"D283001F D2830000"
print"D2802000 D2802119 D2802231 D2802347"
print"D280245A D280256A D2802675 D280277D"
print"D280287F D280297D D2802A75 D2802B6A"
print"D2802C5A D2802D47 D2802E31 D2802F19"
print"D2803080 D2803190 D28032A0 D28033B0"
print"D28034C0 D28035D0 D28036E0 D28037F0"
print"D2803800 D2803910 D2803A20 D2803B30"
print"D2803C40 D2803D50 D2803E60 D2803F70"
print"D283001F D2830000"
print"D2804000 D2804100 D2804200 D2804380"
print"D2804400 D2804570 D2804670 D2804770"
print"D2804800 D2804900 D2804A00 D2804B80"
print"D2804C00 D2804D00 D2804E00 D2804F80"
print"D2805080 D2805180 D2805280 D2805300"
print"D2805480 D2805500 D2805600 D2805700"
print"D2805800 D2805980 D2805A80 D2805B80"
print"D2805C00 D2805D80 D2805E80 D2805F80"
print"D283001F D2830000"
print"D2806000 D2806100 D2806200 D2806380"
print"D2806400 D2806570 D2806670 D2806770"
print"D2806800 D2806900 D2806A00 D2806B80"
print"D2806C00 D2806D00 D2806E00 D2806F80"
print"D2807080 D2807180 D2807280 D2807300"
print"D2807480 D2807500 D2807600 D2807700"
print"D2807800 D2807980 D2807A80 D2807B80"
print"D2807C00 D2807D80 D2807E80 D2807F80"
print"D283001F D2830000"
print"D2848000 D28481F8 D28482F0 D28483E8"
print"D28484E0 D28485D8 D28486D0 D28487C8"
print"D28488C0 D28489B8 D2848AB0 D2848BA8"
print"D2848CA0 D2848D98 D2848E90 D2848F88"
print"D2849080 D2849178 D2849270 D2849368"
print"D2849460 D2849558 D2849650 D2849748"
print"D2849840 D2849938 D2849A30 D2849B28"
print"D2849C20 D2849D18 D2849E10 D2849F08"
print"D283001F"

lct=0

open finp$ for input as #1
while eof(1)=0
  file input #1,txrd$
  setcaption("b:"+str$(lct)):lct+=1
  if mid$(txrd$,1,1)="[" then:
    if mid$(txrd$,2,1)="f" then:
      chid=val(mid$(txrd$,3,2))
      chid=chid mod 10 'k051649x2 has 10 channels
      chfqv=vldc(lstinf$(txrd$,":","]"))
      chfqv2=int(26.6984611843*2^(8-chfqv))
      if chfqv2>2047 then:chfqv2=2047:end if
      if chfqv2<0 then:chfqv2=0:end if
      chchrfq$=right$("000"+hex$(chfqv2),3)
      if int(chid/5)=0 then
        txrgo$="D201"+right$("00"+hex$(1+2*(chid mod 5)),2)+"0"+mid$(chchrfq$,1,1)
        txrgo$+=" D201"+right$("00"+hex$(0+2*(chid mod 5)),2)+mid$(chchrfq$,2,2)
      else
        txrgo$="D281"+right$("00"+hex$(1+2*(chid mod 5)),2)+"0"+mid$(chchrfq$,1,1)
        txrgo$+=" D281"+right$("00"+hex$(0+2*(chid mod 5)),2)+mid$(chchrfq$,2,2)
        end if
      print ucase$(txrgo$)
      end if
    if mid$(txrd$,2,1)="v" then:
      chid=val(mid$(txrd$,3,2))
      chid=chid mod 10 'k051649x2 has 10 channels
      chvlv=vldc(lstinf$(txrd$,":","]"))*0x10
      chchrvl$=right$("00"+hex$(chvlv),2)
      if int(chid/5)=0 then
        txrgo$="D202"+right$("00"+hex$(chid mod 5),2)+chchrvl$
      else
        txrgo$="D282"+right$("00"+hex$(chid mod 5),2)+chchrvl$
        end if
      print ucase$(txrgo$)
      end if
    if mid$(txrd$,2,3)="wvb" then:
      wvblv=vldc(lstinf$(txrd$,":","]"))
      wvblv2=wvblv*44100
      wvblv3a=wvblv2 mod 65536
      wvblv3b=int(wvblv2/65536)
      wvblv3as$=ucase$(right$("0000"+hex$(wvblv3a),4))
      for ii=1 to wvblv3b:print"61FFFF":next
      print "61"+mid$(wvblv3as$,3,2)+mid$(wvblv3as$,1,2)
      end if
    end if
  wend
print:print "66":print
close #1


